from PIL import Image
import os
import pickle,glob
import binascii
import struct

#filePath = 'C://Users//Administrator//Desktop//Source//指南针优化//'
#filePath='.//UI_Output//'
#file=os.listdir(filePath)
#file.sort(key=lambda x: int(x.split("_")[1][:-4]))
#file.sort(key=lambda x: int(x[:-4]))
##print(file)
#file_num=len(os.listdir(filePath))
#print("当前文件夹内图片的个数=%d"%(file_num))#打印文件个数

list =[0xFF]  #读取图片数据列表
Array=0

#生成bin文件
bin_name ='./UI.bin'

##
###offset=0x00182520          #修改此处的偏移地址 从零就是0  
##offset=0x0          #修改此处的偏移地址 从零就是0  
##
##
##History_offset=0
###for root, dirs, files in os.walk(filePath, topdown=False):
###for files in os.walk(filePath, topdown=False):    
##    #print(root)     # 当前目录路径
##    #print(dirs)     # 当前目录下所有子目录
##    #print(files)        # 当前路径下所有非目录子文件
##
##
##
###image=Image.open("./Source/2.jpg") ##输入图片文件
##for i in range(file_num):
##    offset=offset+History_offset;
##    image=Image.open(filePath+str(file[i])) ##输入图片文件
###image=Image.open("C://Users//Administrator//Desktop//Source//power//POWER_001.JPG") ##输入图片文件
####data = [image.getpixel((x, y))for x in range(image.width) for y in range(image.height)]
##    #print(image.size)  #打印图片大小
##    #print(image.format)#打印图片格式
##    index=str(file[i])[0:str(file[i]).find(".")]  #返回图片名称
##    width,height =image.size
##   
##    address=define+"  "+index+Address+"                      "+str(hex(offset))+"//宽度*高度*2"+"  "+str(width)+" "+str(height)
##    
##    History_offset=width*height*2;#
##    print(address)
##    #size=define+ "  "+index+OFFSET
##    #print(size)
##    width,height =image.size
##    for y in range(0,height):
##        for x in range(0,width):
##            r,g,b=image.getpixel((x,y))
##        #八位转五位
##        #px =hex((r>>3)<<11|(g>>2)<<5|b>>3)
##            Array=(((r>>3)<<11|(g>>2)<<5|b>>3)>>8)          ##高位字节在前
##            list.append((Array))                            ##将数据追加到列表
##        #list.insert(x*y*2,Array)
##            Array=(( ((r>>3)<<11|(g>>2)<<5|b>>3)>>0) &0xff) ##低位字节在后
##            list.append((Array))                            ##将数据追加到列表
##        #list.insert(x*y*2+1,Array)
##        #out+=px     
##        #print(Array)
####      out+=str(px)+ ","       
###print (out)       
###print(list)  ##打印图片列表的数据





    #写入数据到Bin文件内
binfile= open(bin_name,'wb+')
for i in range(0,1024*1024) :
    
    n = struct.pack('B',list[0])
    binfile.write(n)
    #print(n)
binfile.close()



img = Image.open('1.png')
out = img.resize((240, 240),Image.ANTIALIAS) #resize image with high-quality
out.save('out.png', 'png')

#ResizeImage('1.png','out.png', 240, 240, )



